/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import model.StPostagem;

/**
 * Document   : StPostagemDAO
 * 
 * Created on : 01/03/2013, 10:49:45 
 * 
 * Author     : Fiúza <rbfiuza@gmail.com>
 */ 

public class StPostagemDAO {
    
    Connection conn = null;
    PreparedStatement stmt = null;
    String sql = null;

    public ArrayList<StPostagem> getPostagens() {
        ArrayList<StPostagem> stPostagemList = new ArrayList<StPostagem>();

        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "mysql");

            sql = "Select"
                    + " id"
                    + ",dsc_postagem"
                    + ",qnt_postagem"
                    + ",disciplina"
                    + ",polos"
                    + ",qnt"
                    + ",vlr_unit"
                    + ",vlr_final"
                    + ",indicacoes_parametros"
                + " from postagem where 1  = ?";

            stmt = conn.prepareStatement(sql);
            stmt.setInt(1, 1);

            ResultSet rs = stmt.executeQuery();

            while (rs.next()) {

                StPostagem postagem = new StPostagem();
                postagem.setId(rs.getInt("id"));
                postagem.setDscPostagem(rs.getString("dsc_postagem"));
                postagem.setQntPostagem(rs.getInt("qnt_postagem"));
                postagem.setDisciplina(rs.getInt("disciplina"));
                postagem.setPolos(rs.getInt("polos"));
                postagem.setQnt(rs.getFloat("qnt"));
                postagem.setVlrUnit(rs.getFloat("vlr_unit"));
                postagem.setVlrFinal(rs.getFloat("vlr_final"));
                postagem.setIndicacoesParametros(rs.getString("indicacoes_parametros"));
                
                stPostagemList.add(postagem);
            }

            rs.close();
            stmt.close();
            stmt = null;


            conn.close();
            conn = null;

        } catch (Exception e) {
            System.out.println(e);
        } finally {

            if (stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException sqlex) {
                    // ignore -- as we can't do anything about it here           
                }

                stmt = null;
            }

            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException sqlex) {
                    // ignore -- as we can't do anything about it here     
                }

                conn = null;
            }
        }

        return stPostagemList;
    }

    public String insertDiaria() {
        String userId = null;

        return userId;
    }

    public boolean updatePostagem(String storeId, StPostagem stPostagem) {
        boolean success = true;

        try {

            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "mysql");

            sql = "UPDATE postagem set   "
                    + " id = ?"
                    + ",dsc_postagem = ?"
                    + ",qnt_postagem = ?"
                    + ",disciplina = ?"
                    + ",polos = ?"
                    + ",qnt = ?"
                    + ",vlr_unit = ?"
                    + ",vlr_final = ?"
                    + ",indicacoes_parametros = ?"
                    + " where id = ?";
            
            stmt = conn.prepareStatement(sql);
            stmt.setInt(1, stPostagem.getId());
            stmt.setString(2, stPostagem.getDscPostagem());
            stmt.setInt(3, stPostagem.getQntPostagem());
            stmt.setInt(4, stPostagem.getDisciplina());
            stmt.setInt(5, stPostagem.getPolos());
            stmt.setFloat(6, stPostagem.getQnt());
            stmt.setFloat(7, stPostagem.getVlrUnit());
            stmt.setFloat(8, stPostagem.getVlrFinal());
            stmt.setString(9, stPostagem.getIndicacoesParametros());
            stmt.setInt(10, stPostagem.getId());

            stmt.executeUpdate();

            stmt.close();
            stmt = null;
            conn.close();
            conn = null;

        } catch (Exception e) {

            success = false;
            System.out.println(e);

        } finally {

            if (stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException sqlex) {
                    // ignore -- as we can't do anything about it here           
                }

                stmt = null;
            }

            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException sqlex) {
                    // ignore -- as we can't do anything about it here     
                }

                conn = null;
            }
        }

        return success;
    }
}
    

